Skip to content

fastrpc-test: Add runtime validation and remove SoC-based filtering - #532

Open
anankulk wants to merge 1 commit into
qualcomm-linux:mainfrom
anankulk:enable_glymur_rb1
Open

fastrpc-test: Add runtime validation and remove SoC-based filtering#532
anankulk wants to merge 1 commit into
qualcomm-linux:mainfrom
anankulk:enable_glymur_rb1

Conversation

@anankulk

@anankulk anankulk commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Summary

Replace hardcoded SoC-specific FastRPC test filtering with runtime
validation of actual test prerequisites.

  • Enable FastRPC testing on QRB2210 and Glymur CRD by removing the
    hardcoded SoC-level skip.
  • Remove the GPDSP0/GPDSP1 blacklist for QCS9075, QCS8275, QCS8300,
    and QCS9100. GPDSP availability is now determined entirely through
    runtime discovery.
  • Validate FastRPC system library, DSP skeleton, and
    /dev/fastrpc-<domain> endpoint availability before execution.
    Domains or configurations that are not usable are skipped early
    with a clear message instead of being invoked and failing.
  • Remove the SM8850 libhap_example HAP_mem DMA exception
    (only_hap_example_failed) so results are reported consistently
    across all targets.

Files changed

  • Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh
  • Runner/utils/lib_fastrpc.sh

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

only_hap_example_failed() now has no callers and still documents the SM8850 exception being removed. Remove the function and obsolete comment in this PR.


case "$SOC_MACHINE" in
*QRB2210*|*"Glymur CRD"*)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QRB2210 and Glymur now reach generic discovery, but discover_supported_domains() checks remoteproc/DT presence—not whether the corresponding FastRPC endpoint, libraries, and skeletons are usable. Runtime-layout discovery merely warns when artifacts are absent.

# Do not skip Glymur CRD by SoC name. Newer Glymur/Debian images expose
# ADSP/CDSP remoteproc instances and FastRPC skeletons, so runtime discovery
# should decide whether the test can run.
soc_skip_all=0

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

soc_skip_all is initialized to 0 but can no longer become 1.Remove soc_skip_all and its block at lines 251–255 rename the section to describe the remaining GPDSP filter.

@anankulk

Copy link
Copy Markdown
Contributor Author

Hi Srikanth Muppandam (@smuppand),

With the upcoming tag to be released for fastrpc recipe : we are enabling gpdsp test support as-well.
Once the tag is released, will address the comments and enable gdsp as-well along with the on-going changes.

Enable FastRPC testing on QRB2210 and Glymur CRD by removing the
hardcoded SoC-level skip. Remove the SoC-specific GPDSP0/GPDSP1
blacklist for QCS9075, QCS8275, QCS8300, and QCS9100; GPDSP
availability is now determined entirely through runtime discovery.

Add validation of FastRPC system library, DSP skeleton, and
/dev/fastrpc-<domain> endpoint availability before test execution.
Domains or configurations that are not usable are skipped early with
a clear message instead of being invoked and failing.

Remove the SM8850 libhap_example HAP_mem DMA exception
(only_hap_example_failed) so results are reported consistently across
all targets.

Signed-off-by: Anand Kulkarni <anankulk@qti.qualcomm.com>
@anankulk anankulk changed the title fastrpc-test :enable tests on QRB2210, Glymur CRD, and SM8850 fastrpc-test :fastrpc-test: Add runtime validation and remove SoC-based filtering Aug 27, 2026
@anankulk anankulk changed the title fastrpc-test :fastrpc-test: Add runtime validation and remove SoC-based filtering fastrpc-test: Add runtime validation and remove SoC-based filtering Aug 27, 2026

@smuppand Srikanth Muppandam (smuppand) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With these new changes, you have to fix the following code as well.

Runner/utils/lib_fastrpc.sh:151 — artifact discovery validates generic directories, not FastRPC artifacts

  • Issue: FASTRPC_RESOLVED_LIB_SYS_DIR becomes /usr/lib whenever that directory exists. Likewise, the runner checks FASTRPC_RESOLVED_SKEL_BASE,
    although the base can exist without either v75 or v68. FASTRPC_RESOLVED_LIB_TEST_DIR is discovered but never required.

  • Recommended fix: Resolve and validate the actual required library files, require a non-empty FASTRPC_RESOLVED_SKEL_PATH, and validate the required
    test-library artifacts rather than generic directories.

Runner/suites/Multimedia/CDSP/fastrpc_test/fastrpc_test.yaml:11 — YAML still documents removed GPDSP filtering

  • Issue: The description says GPDSP domains are skipped on QCS9075/QCS8275/QCS8300/QCS9100, while the PR removes that blacklist.
  • Recommended fix: Describe runtime domain and endpoint discovery instead.

Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh:188 — remove unused SOC_MACHINE

  • Recommended fix: Remove the assignment.


if [ "$soc_skip_all" -eq 1 ]; then
log_skip "$TESTNAME SKIP - SoC $SOC_MACHINE does not support FastRPC"
if [ -z "$available_domains" ]; then

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A domain supplied through --domain, --domain-name, or single-domain configuration is filtered out when its /dev/fastrpc-* endpoint is absent, and an empty set produces SKIP.

I recommend, Preserve selection provenance. No automatically discovered applicable domain may remain a SKIP, but a missing endpoint for an explicitly selected domain should be FAIL with endpoint and remoteproc diagnostics.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants